var request = null;

function httpRequest(reqType, url, asynch, respHandle) {
    if(window.XMLHttpRequest) {
        request = new XMLHttpRequest();
    } else if(window.ActiveXObject) {
        request = new ActiveXObject("Msxml2.XMLHTTP");
        if(!request) {
            request = new ActiveXObject("Microsoft.XMLHTTP");
        }
    }
    if(request) {
        if(reqType.toLowerCase() == "get") {
            initReq(reqType, url, asynch, respHandle);
        } else {
            var args = arguments[4];
            if(args != null && args.length > 0) {
                initReq(reqType, url, asynch, respHandle, args);
            }
        }
    } else {
        alert("Ihr Browser lässt die Verwendung aller Funktionen dieser Anwendung nicht zu!");
    }
}

function initReq(reqType, url, bool, respHandle) {
    try {
        request.onreadystatechange = respHandle;
        request.open(reqType,url);
        if(reqType.toLowerCase() == "post") {
            request.setRequestHeader("Content-Type",
                "application/x-www-form-urlencoded; charset=UTF-8");
            request.send(arguments[4]);
        } else {
            request.send(null);
        }
    } catch (errv) {
        alert(
            "Die Anwendung kann im Moment keine " +
            "Verbindung zum Server herstellen. " +
            "Bitte versuchen Sie es in einigen Sekunden noch einmal.\n" +
            "Fehlerinformation: " + errv.message
        );
    }
}